home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / Svd Messageboard Arcive / ephemery / data / MBPREP.ZIP / TRE2MSGC.PL < prev    next >
Encoding:
Text File  |  1999-02-14  |  2.3 KB  |  77 lines

  1. $TREEN= $ARGV[0] ne '' ? $ARGV[0] : die "tree2msgb.htm tree_filename [yes=disable_missing_links]";
  2. $MB = $ARGV[0];
  3. $MB =~ s/\.tre$//i;
  4. $OUT = ">$MB.htm";
  5. print "<$TREEN   $OUT\n";
  6.  
  7. #will check the presence of link-file.htm or .9  in current dir
  8. $disable_missing_links = ($ARGV[1] =~ /yes/i);
  9.  
  10. open(OUT) || die "can't open $OUT";
  11.  
  12. $IN = "$MB.hdr";
  13. open IN || die "can't open $IN";
  14. while (<IN>) { print OUT; }
  15. close IN;
  16. #(@tm) = gmtime(); $tm[4]++; $tm[5]+=1900; # $tm[3].$tm[4].$tm[5]
  17. print OUT "<center>rebuilt</center>\n";
  18.  
  19. $IN = $TREEN;
  20. open IN || die "can't open $IN";
  21.  
  22. $lvlprev=0;
  23. while (<IN>) { chop;
  24.    ($lvl,$mail,$name,$mssg,$subj,$date) = split( "\f");
  25.  
  26. print OUT "<ul>"  x ($lvl-$lvlprev) if ($lvl>$lvlprev);
  27. print OUT "</ul>" x ($lvlprev-$lvl) if ($lvlprev>$lvl);
  28. print OUT "\n<hr size=0> " if !$lvl;              #main msg only
  29. #print OUT "<TABLE WIDTH=100%><TR><TD>" if !$lvl;  #main msg only
  30. print OUT "<A HREF=\"mailto:$mail\">" if $mail ne '';
  31. print OUT "<font size=\"-1\">$name</font>";   # face=\"arial,helvetica\"
  32. print OUT "</A>" if $mail ne '';
  33. $mssg =~ s/\.9$/\.HTM/;    #files named *.9 are NOT recognised as HTML. why?
  34. #$mssg = "data/".$mssg;
  35.  
  36.   if ($disable_missing_links) {
  37.    $missing= $dup =0;
  38.    $mssgroot =  $mssg;
  39.    $mssgroot =~ s/\.9$//;
  40.    $mssgroot =~ s/\.HTM$//;
  41.    @st1 = stat( "$mssgroot.HTM" );
  42.    if (!$st1[7]) {
  43.      @st1 = stat( "$mssgroot.9" );
  44.      if (!$st1[7]) {
  45. #      $mssgroot = "9$mssgroot";
  46.        print ": $mssgroot\n";
  47. #      $http = "http://www.insidetheweb.com/messageboard/mbs.cgi?acct=$MB&MyNum=$mssgroot&P=No&TL=$mssgroot";
  48. #      print "<A HREF=\"$http\"> $mssg </A><BR>\n";
  49.        $missing++;
  50.       }
  51.    }
  52.    $dup++ if $msgprev eq $mssgroot;
  53.    $msgprev = $mssgroot;
  54.   }
  55.  
  56. print OUT ": ";
  57. print OUT "dup: " if $dup;
  58. print OUT "OK: " if $disable_missing_links && !$missing;
  59. print OUT $missing ? "miss(9$mssgroot): " : "<A HREF=\"$mssg\">";
  60.  
  61. print OUT "<FONT SIZE=\"-1\">" if $lvl;         #smaller font on submesssages
  62. print OUT $lvl ? "$subj" : "<B>$subj</B>";
  63. print OUT "</FONT>" if $lvl;
  64. print OUT "</A>" if !$missing;
  65. print OUT "<FONT SIZE=\"-2\"> $date</FONT>";
  66. print OUT "<BR>";
  67. #print OUT "</TD></TR></TABLE>" if !$lvl;        #main msg only
  68. print OUT "\n";
  69.  
  70.    $lvlprev = $lvl;
  71. }
  72. close IN;
  73.  
  74. print OUT "</body></html>\n";  #epilogue
  75.  
  76. #SvD 01'99
  77.